#ifndef UTILS_H
#define UTILS_H
#include "utils.h"
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
bool isNumber(string s);
bool IsOp(char ch);
bool isFunction(string s);
bool isSymbol(string s);
int getPriority(char ch);
//remove space, strings strong!
void removeSpace(string &kekab);

vector<int> findEye(string src);

//to find s is or isn't a number.
bool isNumber(string s);

//you must remove its head before eating it.
void removeHeadSpace(string &ant);

//to find whether a string contains a char.
bool contain(string s, char a);

//whether target begins with head, make sure target has no space or tab prefix!
bool beginWith(string &target, string head);

bool looseBalance(string src);

bool balance(string src);

//split.
vector<string> myGet(string src, char delim);
//to get the formal list of a function call.
vector<string> pureFormals(string s);

//wheel.
string &replace_all_distinct(string &str, const string &old_value, const string &new_value);

#endif